The present invention relates to a database technology based upon GPGPU (General Purpose computing on Graphics Processing Units).
In recent years, attention is paid to the GPGPU technology of causing a parallel arithmetic unit such as a GPU (Graphics Processing Unit) to perform a general purpose arithmetic process. The GPU is higher in a degree of parallelism of the arithmetic units and is higher in a throughput of the arithmetic operation than a CPU (Central Processing Unit). Further, the GPU has a configuration similar to that of a SIMD arithmetic unit for performing an instruction supply for a plurality of the arithmetic units. So as to exhibit a high processing performance by employing the GPGPU, it is required to make the number of branch instructions small, and yet it is required that not only the data supply amount to one of a certain set of the arithmetic units coincides to the data supply amount to the other, but also continuity of the data to be supplied is kept.
It is thinkable that the data structure based upon column store is a structure suitable for the process that is performed by the parallel arithmetic unit such as the GPGPU. The data process of fixed length data is expressed as a sequence of fixed lengths column by column owing to the column store, whereby it is enough to supply this for the data process with the GPGPU.
For example, the technology of, for one large-scale text, performing full text research of its content with a help of the GPGPU is disclosed in Non-Patent literature 1.
HIGASHI RYUICHI, FUJIMOTO NORIYUKI, and HAGIWARA KENICHI “An Investigation of CUDA based Fast Full Text Search for Large-Scale Texts on Main Memory”, The Institute of Electronics, Information and Communication Engineers, Information Processing Society of Japan, No. 19, 2008, pp 139-144.
However, the database for efficiently storing a data group containing variable-length data, and the database processing method of efficiently processing such a database have not been realized yet.